package cn.drenal.capcap.service;

import cn.drenal.capcap.entity.dto.AdminLoginDTO;
import cn.drenal.capcap.entity.vo.AdminLoginVO;
import cn.drenal.capcap.entity.vo.AdminUserInfoVO;

import java.util.List;

/**
 * 后台管理登录服务
 */
public interface AdminLoginService {
    /**
     * 管理员登录
     *
     * @param loginDTO 登录参数
     * @return 登录结果
     */
    AdminLoginVO login(AdminLoginDTO loginDTO);

    /**
     * 获取登录用户信息
     * @param userId 用户ID
     * @return 用户信息
     */
    AdminUserInfoVO getLoginUserInfo(Long userId);

    /**
     * 管理员登出
     */
    void logout();

    /**
     * 获取用户的权限
     * @param userId
     * @return
     */
    List<String> getPermissions(Long userId);
}